Avoid warnings
authorMatthias Clasen <matthiasc@src.gnome.org>
Sat, 28 Feb 2009 06:32:27 +0000 (06:32 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Sat, 28 Feb 2009 06:32:27 +0000 (06:32 +0000)
svn path=/trunk/; revision=22424

ChangeLog
gtk/gtkstatusicon.c

index 58c687ddca549bfcb76aedea0fe8a78aa7002f22..c6bfa432c420291cdeb4de76bcadad4e02af5d45 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-02-28  Matthias Clasen  <mclasen@redhat.com>
+
+       Bug 573287 – Warning on startup
+
+       * gtk/gtkstatusicon.c (gtk_status_icon_finalize): Disconnect
+       all tray icon signals. Noticed by Bastien Nocera
+
 2009-02-28  Matthias Clasen  <mclasen@redhat.com>
 
        Bug 573211 – Setting screen for popup windows
index c61d42b41cf8b00683dd786500e3b0d1df9cb89a..83bdb2cc5cb7b100d24d97874bb5615495cecca9 100644 (file)
@@ -942,6 +942,24 @@ gtk_status_icon_finalize (GObject *object)
   priv->blank_icon = NULL;
 
 #ifdef GDK_WINDOWING_X11
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_key_press, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_popup_menu, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_embedded_changed, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_orientation_changed, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_button_press, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_button_release, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_scroll, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_query_tooltip, status_icon);
+  g_signal_handlers_disconnect_by_func (priv->tray_icon,
+                                       gtk_status_icon_screen_changed, status_icon);
   gtk_widget_destroy (priv->image);
   gtk_widget_destroy (priv->tray_icon);
 #endif